Data transmission for an internet of vehicles system

ABSTRACT

The present invention discloses a data transmission method and apparatus. The method comprises: obtaining information of a vehicle, the information comprising a current location of the vehicle; predicting a possible location of the vehicle in a future period of time and corresponding communication connection quality; predicting changes of the communication connection quality in the vehicle running course according to the communication connection quality at the current location of the vehicle and the communication connection quality at the predicted location; and according to the changes, determining an adjustment policy of computing resources for processing data uploaded by the vehicle. By means of the method and apparatus of the embodiments of the present invention, computing resources for processing real-time data uploaded by vehicles can be determined dynamically.

CROSS REFERENCE TO RELATED APPLICATION

Pursuant to 35 U.S.C. §119, the present application claims priority toChinese Application No. 2013-10530454.5, filed Oct. 31, 2013, the entirecontents of which are incorporated herein by reference.

TECHNICAL FIELD

The present invention relates to data transmission, and morespecifically, to a data transmission method and apparatus for anInternet of Vehicles (IOV) system.

BACKGROUND

In scenarios related to Internet of Vehicles systems, a vehicleperiodically sends real-time data to a server by a vehicle-mountedterminal device. However, since the vehicle often travels through areaswith bad signal quality, such as areas where the signal quality getsworse due to congestion or tunnels, mountains and other areas where thesignal quality is already bad, phenomena such as re-transmission anddisorder occur in data sent by the vehicle-mounted terminal device.

In order to completely receive data from the vehicle-mounted terminalfor subsequent processing, the server usually has to preserve fixedcomputing resources for each vehicle in the light of the worst signalquality, such as a fixed data buffer, fixed data compression mode, fixeddata submitting frequency, etc. For example, regarding a fixed buffersetting, since some systems take the worst situation into considerationwhile setting buffers, fixed buffers need to be allocated for eachvehicle as many as possible in order to cope with possiblere-transmission or re-ordering. However, since the worst situation has alow probability of occurrence, the existing fixed resource allocationmode is inefficient and resource-consuming. In an IOV system with alarge amount of online vehicles, such fixed resources will becomelarger, which means a great burden on the server.

SUMMARY

According to a first aspect of the present invention, there is provideda data transmission method for a Internet of Vehicles system, the methodcomprising: obtaining information of a vehicle, the informationcomprising a current location of the vehicle; predicting a possiblelocation of the vehicle in a future period of time and correspondingcommunication connection quality; predicting changes of thecommunication connection quality in the vehicle running course accordingto the communication connection quality at the current location of thevehicle and the communication connection quality at the predictedlocation; and according to the changes, determining an adjustment policyof computing resources for processing data uploaded by the vehicle.

According to a second aspect of the present invention, there is provideda data transmission apparatus for the Internet of Vehicles system, theapparatus comprising: an obtaining module configured to obtaininformation of a vehicle, the information comprising a current locationof the vehicle; a predicting module configured to predict a possiblelocation of the vehicle in a future period of time and correspondingcommunication connection quality; a communication connection qualitypredicting module configured to predict changes of the communicationconnection quality in the vehicle running course according to thecommunication connection quality at the current location of the vehicleand the communication connection quality at the predicted location; andan adjustment policy determining module configured to, according to thechanges, determine an adjustment policy of computing resources forprocessing data uploaded by the vehicle.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Through description of some embodiments of the present disclosure andthe accompanying drawings, certain features and advantages of thepresent disclosure will become more apparent. As used herein, the samereference generally refers to the same components in the embodiments ofthe present disclosure that are shown and described herein.

FIG. 1 illustrates a functional block diagram of an exemplary computersystem/server, which is capable of implementing an embodiment of thepresent invention;

FIG. 2 shows a flowchart of a data transmission method for an Internetof Vehicles system, according to one embodiment of the presentinvention;

FIG. 3 shows a schematic view illustrating step 240 of FIG. 2, accordingto one embodiment of the present invention; and

FIG. 4 shows a schematic view of a data transmission apparatus of theInternet of Vehicles system, according to one embodiment of the presentinvention.

DETAILED DESCRIPTION

Some embodiments will be described in more detail with reference to theaccompanying drawings, in which certain embodiments of the presentdisclosure have been illustrated. However, the present disclosure can beimplemented in various manners, and thus should not be construed to belimited to the embodiments disclosed herein. On the contrary, thoseembodiments are provided for the thorough and complete understanding ofthe present disclosure, and completely conveying the scope of thepresent disclosure to those skilled in the art.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readablestorage medium. A computer readable storage medium may be, for example,but not limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, or device, or any suitablecombination of the foregoing. More specific examples (a non-exhaustivelist) of the computer readable storage medium would include thefollowing: a portable computer diskette, a hard disk, a random accessmemory (RAM), a read-only memory (ROM), an erasable programmableread-only memory (EPROM or Flash memory), a portable compact discread-only memory (CD-ROM), an optical storage device, a magnetic storagedevice, or any suitable combination of the foregoing. In the context ofthis document, a computer readable storage medium may be any tangiblemedium that can contain, or store a program for use by or in connectionwith an instruction execution system, apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

Referring now to FIG. 1, FIG. 1 illustrates a functional block diagram,10, of an exemplary computer system/server 12, which is applicable toimplement an embodiment of the present invention. Computer system/server12 is only illustrative and is not intended to suggest any limitation asto the scope of use or functionality of embodiments of the inventiondescribed herein.

As shown in FIG. 1, computer system/server 12 is shown in the form of ageneral-purpose computing device. The components of computersystem/server 12 may include, but are not limited to, one or moreprocessors or processing units 16, a system memory 28, and a bus 18 thatcouples various system components including system memory 28 toprocessor 16.

Bus 18 represents one or more of any of several types of bus structures,including a memory bus or memory controller, a peripheral bus, anaccelerated graphics port, and a processor or local bus using any of avariety of bus architectures. By way of example, and not limitation,such architectures include Industry Standard Architecture (ISA) bus,Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, VideoElectronics Standards Association (VESA) local bus, and PeripheralComponent Interconnect (PCI) bus.

Computer system/server 12 typically includes a variety of computersystem readable media. Such media may be any available media that isaccessible by computer system/server 12, and it includes both volatileand non-volatile media, removable and non-removable media.

System memory 28 can include computer system readable media in the formof volatile memory, such as random access memory (RAM) 30 and/or cachememory 32. Computer system/server 12 may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 34 can be provided forreading from and writing to a non-removable, non-volatile magnetic media(not shown and typically called a “hard drive”). Although not shown, amagnetic disk drive for reading from and writing to a removable,non-volatile magnetic disk (e.g., a “floppy disk”), and an optical diskdrive for reading from or writing to a removable, non-volatile opticaldisk such as a CD-ROM, DVD-ROM or other optical media can be provided.In such instances, each can be connected to bus 18 by one or more datamedia interfaces. As will be further depicted and described below,memory 28 may include at least one program product having a set (e.g.,at least one) of program modules that are configured to carry out thefunctions of embodiments of the invention.

Program/utility 40, having a set (at least one) of program modules 42,may be stored in memory 28 by way of example, and not limitation, aswell as an operating system, one or more application programs, otherprogram modules, and program data. Each of the operating system, one ormore application programs, other program modules, and program data orsome combination thereof, may include an implementation of a networkingenvironment. Program modules 42 generally carry out the functions and/ormethodologies of embodiments of the invention as described herein.

Computer system/server 12 may also communicate with one or more externaldevices 14 such as a keyboard, a pointing device, a display 24, etc.;one or more devices that enable a user to interact with computersystem/server 12; and/or any devices (e.g., network card, modem, etc.)that enable computer system/server 12 to communicate with one or moreother computing devices. Such communication can occur via Input/Output(I/O) interfaces 22. Still yet, computer system/server 12 cancommunicate with one or more networks such as a local area network(LAN), a general wide area network (WAN), and/or a public network (e.g.,the Internet) via network adapter 20. As depicted, network adapter 20communicates with the other components of computer system/server 12 viabus 18. It should be understood that although not shown, other hardwareand/or software components could be used in conjunction with computersystem/server 12. Examples, include, but are not limited to: microcode,device drivers, redundant processing units, external disk drive arrays,RAID systems, tape drives, and data archival storage systems, etc.

Now with reference to FIG. 2, this figure shows a flowchart of a datatransmission method used in an Internet of Vehicles system according toone embodiment of the present invention. As shown in FIG. 2, the methodcomprises at least the following steps:

In step 210, information of a vehicle is obtained, which comprises acurrent location of the vehicle.

In this step, the obtained vehicle information comprises at leastcurrent location information of the vehicle. Typically, the currentlocation of the vehicle can be determined in real time according to GPSdata periodically uploaded by the vehicle.

In addition, other information uploaded by the vehicle, in oneembodiment, is also be obtained, such as the vehicle's self-information.One example of the vehicle's self-information is fuel charge, tirepressure and other information reported through controller area network(CAN) data. Another example of the vehicle's self-information is thevehicle's profile information, such as a vehicle-mounted terminal'sbrand, sending/receiving device's sensitivity, sending/receiving power,etc. Of course, those skilled in the art may further obtain otherinformation according to concrete demands, which is not detailed here.

In one embodiment, step 210 is implemented by a server, and the obtainedinformation may come from a vehicle-mounted terminal on the vehicle.

In step 220, a possible location of the vehicle in a future period oftime and corresponding communication connection quality are predicted.

In one embodiment, a road section which the vehicle might travel throughin a future period of time may be predicted, such as a road sectionwhich the vehicle might travel through in next N minutes. Specifically,the road section which the vehicle might travel through may be predictedthrough vehicle trajectory data, trajectory pattern, road networkinformation and other real-time data.

The road network information comprises a map, road network conditions,real-time road conditions, etc., and real-time road conditions may bedetermined from the vehicle trajectory data or by any existing means. Inone embodiment, a concrete road section, which the vehicle is currentlylocated in or will travel through, is determined according to a mappingrelationship between GPS data and road sections in road networkinformation.

The vehicle trajectory pattern is usually a statistical result oftrajectories of a specific vehicle or similar vehicles, and, in someembodiments, is used for assisting prediction. As an example, thevehicle trajectory pattern, in one embodiment, is a trajectory ofsimilar vehicles, or congestion law of a certain area.

Further, communication connection quality corresponding to locationspossibly passed by is predicted. According to one embodiment of thepresent application, there is further comprised establishing a diagramof a distribution of the communication connection quality, the diagramof the distribution of the communication connection quality comprisingcommunication connection quality information of multiple locations in acertain area; the predicting a possible location of the vehicle in afuture period of time and corresponding communication connection qualitycomprises: according to the diagram of the distribution of thecommunication connection quality, determining communication connectionquality of a possible location of the vehicle in a future period oftime. In one embodiment, the establishing a diagram of a distribution ofthe communication connection quality comprises: receiving information oflocations periodically uploaded by the vehicle and communicationconnection quality of the locations; and determining communicationconnection quality at each location according to massive informationuploaded by the vehicle.

The communication connection quality is a comprehensive index, which, inone embodiment, is used for measuring the degree of stability ofcommunication between the vehicle-mounted terminal and the server. Inone embodiment, the signal connection quality is influenced by thepacket loss rate, retransmission rate, response time and other factors.In the field of Internet of Vehicle systems, however, there furtherexist other factors prejudicing the communication connection quality.Therefore, in some embodiments, many factors are considered in order toincrease the accuracy when measuring the degree of stability ofcommunication. Specifically, one or more of the following factors may beutilized: location factors, e.g. distance from a 3G base station; roadnetwork and relevant factors, for example, in airport taxi waitingareas, high rises and viaduct areas which are prone to congestion, eventhough a certain location has a high bandwidth, the signal connectionquality decreases in the case of vehicle congestion; vehicle profilefactors, for example, vehicle-mounted terminals of vehicles belonging todifferent brands have inconsistent performance, i.e. might havedifferent transmit power or sensibility, so even at the same locationthe communication connection quality of different vehicles varies.Processes of determining communication connection quality according toconcrete factors are known to one skilled in the art; as suchimplementation details are not detailed here.

Alternatively, the establishing a diagram of a distribution of acommunication connection quality, in some embodiments, furthercomprises: measuring signal connection quality at each of the locationsby an instrument.

In one embodiment, the predicting a possible location of the vehicle ina future period of time and corresponding communication connectionquality comprises: filtering the distribution of the communicationconnection quality according to the vehicle information, so as to obtaina distribution of the communication connection quality that is specificto the vehicle; and then determining communication connection quality ofthe vehicle at a possible location in a future period of time accordingto the communication connection quality distribution that is specific tothe vehicle. In one embodiment, the communication connection qualitydistribution may be filtered using status and information of othersimilar vehicles, so as to create, based, at least in part, on thesimilar vehicles' data, a diagram of a distribution of the communicationconnection quality conforming to a current vehicle profile.

In one embodiment, a small-scope map window is determined, the mapwindow includes a potential path and communication connection quality onthe potential path. In one embodiment, the small-scope communicationconnection quality distribution diagram covers signal connection qualityon a path, which the vehicle might travel through at a future point intime, e.g., one minute.

Those skilled in the art will understand that the more precisely thevehicle's location is predicted, the more accurate an adjustment policyto be determined in a subsequent step is. However, a bad predictionprecision does not affect the implementation of the present application,except that the adjustment efficiency is decreased. As for how topredict a vehicle location, there exist multiple existing technique forreference, which are not detailed herein.

In step 230, changes of communication connection quality in the vehicletravel course are predicted according to communication connectionquality at the current location of the vehicle and communicationconnection quality at the predicted location.

In one embodiment, the server may further notify the vehicle-mountedterminal of concrete location information and time information where andwhen signal quality will decrease. For example, changes of communicationconnection quality in the vehicle travel course are predicted bycomparing connection quality at the current location of the vehicle andconnection quality at the predicted location. In some embodiments,changes of communication connection quality are measured by a concretenumeric, for example, it is known that communication connection qualitywill decrease by 50%.

In one embodiment, changes of communication connection quality arepredicted according to the vehicle's possible path having the worstcommunication connection quality. For example, the vehicle might turnleft to a tunnel having a bad communication connection quality or turnright to an ordinary section having a good communication connectionquality; then, changes of communication connection quality are predictedaccording to the worst possible scenario, and an adjustment policy ofcomputing resources is determined based on the prediction in asubsequent step.

In step 240, an adjustment policy of computing resources for processingdata uploaded by the vehicle is determined according to the changes.

While determining an adjustment policy of computing resources, timecomplexity (CPU) and space complexity (occupied memory) are usually mainadjustable computing resources. On the other hand, in some embodiments,time complexity and space complexity are embodied as different kinds ofcomputing resources.

In one embodiment, the computing resources comprise a decompressionparameter that is set for the vehicle, the adjustment policy comprising:in response to a prediction that the communication connection qualitywill decrease, the server adjusting the decompression parameter tosupport uploaded data with higher compression efficiency from thevehicle, and notifying the vehicle to use a corresponding compressionparameter for compressing data with the higher compression efficiency;in response to a prediction that the communication connection qualitywill increase, the server adjusting the decompression parameter tosupport data with lower compression efficiency from the vehicle, andnotifying the vehicle to use a corresponding compression parameter forcompress data with the lower compression efficiency. In this embodiment,in one example, the compression parameter comprises a consecutivemessage compression setting, compression algorithm executionperformance, compression ratio and a setting parameter that predictscompression, which will be described in detail in FIG. 3.

In one embodiment, the computing resources may comprise a data uploadingfrequency that is set for the vehicle, the adjustment policy comprising:in response to a prediction that the communication connection qualitywill decrease, notifying the vehicle to increase the data uploadingfrequency for uploading as much data as possible before thecommunication quality gets worse; in response to a prediction that thecommunication connection quality will increase, notifying the vehicle tomaintain or decrease the data uploading frequency for reducing thepossibility of data loss or retransmission. In another embodiment, theadjustment policy further comprises: notifying the vehicle to decreasethe data uploading frequency in an area that the communicationconnection quality gets worse; and notifying the vehicle to increase thedata uploading frequency in an area that the communication connectionquality gets better.

In one embodiment, the computing resources comprise a buffer space thatis set for the vehicle, the adjustment policy comprising: in response toa prediction that the communication connection quality will decrease,enlarging the buffer space and determining a duration; in response to aprediction that communication connection quality will increase,narrowing the buffer space and determining a duration. In a moreconcrete embodiment, the adjustment policy is implemented by a modulecomprised at the server end. A data memory request can be made accordingto the adjustment policy, which request may contain information such assize and type of a required memory, etc. Then, the server end allocatesa corresponding buffer space according to the request and performsnecessary initialization. Therefore, by means of the embodiment, a databuffer may be dynamically released and allocated according to aprediction result rather than in a traditionally fixed mode. Moreover,in some embodiments, as memory reservation is reduced as much aspossible, more resources are provided for other computation. As aresult, the server's overall computing efficiency is enhanced, and thedata transmission efficiency is increased. In particular, advantages ofthe method are better exhibited in scenarios where communication qualitychanges dramatically.

In one embodiment, the various adjustment policies described above canbe used in combination. For example, in a tunnel since a storage spaceof the vehicle-mounted terminal is not large, data has to be stored inthe vehicle so that the server allocates more CPU for decompressingdata. Once the vehicle travels out of the tunnel, data in the tunnelshould be sent out as soon as possible, and then normal sendingfrequency is restored.

In one embodiment, there is further comprised: the server notifying thevehicle of the prediction result and the adjustment policy; the vehicleadjusting data sending according to the prediction result and theadjustment policy.

FIG. 3 is a schematic view illustrating step 240 in FIG. 2 by means of amore concrete embodiment, where various parameters related to acompression algorithm are involved, such as consecutive messagecompression number setting, compression ratio, a prediction parameter,etc. Detailed description is presented below to how to adjust theprediction parameter according to communication connection qualityprediction when determining the adjustment policy.

In some embodiments, concerning the consecutive message compressionnumber, when communication connection quality gets worse, a higherconsecutive message compression number is set as far as possible; thecompression ratio is increased and meanwhile the consecutive messagedecompression will also become complex, such that all messages need tobe obtained for decompressing. In some embodiments, for single messagecompression, the relationship between messages does not need to beconsidered, whereas its compression ratio is lower than that ofconsecutive message compression. Therefore, the point of highestefficiency, when using the consecutive message compression, is foundbased, at least in part, on a concrete communication connection qualityand a consecutive compression number equilibrium point.

In some embodiments, for the compression ratio parameter, the adjustmentpolicy comprises: in response to a prediction that communicationconnection quality will decrease, the server adjusting the decompressionratio parameter to support uploaded data with higher compressionefficiency, and notifying the vehicle to use a corresponding compressionratio parameter for compressing data with the higher compressionefficiency; in response to a prediction that communication connectionquality will increase, the server adjusting the decompression ratioparameter to support data with lower compression efficiency, andnotifying the vehicle to use a corresponding compression ratio parameterfor compressing data with the lower compression efficiency.

Likewise, for the prediction compression parameter, when communicationconnection quality decreases, more prediction compression is set as faras possible, and the compression ratio will increase. When communicationconnection quality increases, less prediction compression may be used.

FIG. 4 shows a schematic view of a data transmission apparatus accordingto one embodiment of the present invention, the apparatus comprising: anobtaining module 410 configured to obtain information of a vehicle, theinformation comprising a current location of the vehicle; a predictingmodule 420 configured to predict a possible location of the vehicle in afuture period of time and corresponding communication connectionquality; a communication connection quality predicting module 430configured to predict changes of the communication connection quality inthe vehicle running course according to the communication connectionquality at the current location of the vehicle and the communicationconnection quality at the predicted location; and an adjustment policydetermining module 440 configured to, according to the changes,determine an adjustment policy of computing resources for processingdata uploaded by the vehicle.

In one embodiment, the computing resources comprise a buffer space thatis set for the vehicle, the adjustment policy comprising: in response toa prediction that the communication connection quality will decrease,increasing the buffer space; in response to a prediction that thecommunication connection quality will increase, reducing the bufferspace.

In one embodiment, the computing resources comprise a data uploadingfrequency that is set for the vehicle, the adjustment policy comprising:in response to a prediction that the communication connection qualitywill decrease, notifying the vehicle to increase the data uploadingfrequency for uploading as much data as possible before thecommunication quality gets worse; in response to a prediction that thecommunication connection quality will increase, notifying the vehicle tomaintain or decrease the data uploading frequency.

In one embodiment, the computing resources comprise a decompressionparameter that is set for the vehicle, the adjustment policy comprising:in response to a prediction that the communication connection qualitywill decrease, the server adjusting the decompression parameter tosupport uploaded data with higher compression efficiency from thevehicle, and notifying the vehicle to use a corresponding compressionparameter for compressing data with the higher compression efficiency;in response to a prediction that the communication connection qualitywill increase, the server adjusting the decompression parameter tosupport data with lower compression efficiency from the vehicle, andnotifying the vehicle to use a corresponding compression parameter forcompressing data with the lower compression efficiency.

In one embodiment, the apparatus shown in FIG. 4 further comprises: amodule configured to establish a diagram of a distribution of thecommunication connection quality, the diagram of the distribution of thecommunication connection quality comprising communication connectionquality information at multiple locations in a certain area; thepredicting module comprises: a module configured to determinecommunication connection quality at a possible location of the vehiclein a future period of time according to the diagram of the distributionof the communication connection quality.

In one embodiment, the predicting module comprises: a module configuredto filter the distribution of the communication connection qualityaccording to the vehicle information, so as to obtain a distribution ofthe communication connection quality that is specific to the vehicle.

In one embodiment, the module configured to establish a diagram of adistribution of the communication connection quality comprises: a moduleconfigured to receive information of locations periodically uploaded bythe vehicle and communication connection quality at the locations; amodule configured to determine communication connection quality at eachlocation according to massive information uploaded by the vehicle.

Therefore, by means of the technical solutions according to the variousembodiments of the present invention, it is possible to reasonablydetermine an adjustment policy of computing resources according to aprediction result, thereby not only satisfying computing resources' suchdemands as data retransmission, and disorder of emergencies, and rapidprocessing of data, but also increasing the efficiency of computingresources as far as possible.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

What is claimed is:
 1. A data transmission method for an Internet ofVehicles system, the method comprising: obtaining information of avehicle, the information comprising a current location of the vehicle;predicting a possible location of the vehicle in a future period of timeand corresponding communication connection quality; predicting changesof the communication connection quality in the vehicle running courseaccording to the communication connection quality at the currentlocation of the vehicle and the communication connection quality at thepredicted location; and based, at least in part, on the changes thatwere predicted, determining an adjustment policy of computing resourcesfor processing data uploaded by the vehicle.
 2. The method according toclaim 1, wherein the computing resources comprise a buffer space that isset for the vehicle, the adjustment policy comprising: in response to aprediction that the communication connection quality will decrease,increasing the buffer space; and in response to a prediction that thecommunication connection quality will increase, reducing the bufferspace.
 3. The method according to claim 1, wherein the computingresources comprise a data uploading frequency that is set for thevehicle, the adjustment policy comprising: in response to a predictionthat the communication connection quality will decrease, notifying thevehicle to increase the data uploading frequency for uploading as muchdata as possible before the communication quality gets worse; and inresponse to a prediction that the communication connection quality willincrease, notifying the vehicle to maintain or decrease the datauploading frequency.
 4. The method according to claim 1, wherein thecomputing resources comprise: a decompression parameter that is set forthe vehicle, the adjustment policy comprising: in response to aprediction that the communication connection quality will decrease, theserver adjusting the decompression parameter to support uploaded datawith higher compression efficiency from the vehicle, and notifying thevehicle to use a corresponding compression parameter for compressingdata with the higher compression efficiency; and in response to aprediction that the communication connection quality will increase, theserver adjusting the decompression parameter to support data with lowercompression efficiency from the vehicle, and notifying the vehicle touse a corresponding compression parameter for compressing data with thelower compression efficiency.
 5. The method according to claim 1,further comprising: establishing a diagram of a distribution of thecommunication connection quality, the diagram of the distribution of thecommunication connection quality comprising communication connectionquality information at multiple locations in a certain area; wherein thepredicting a possible location of the vehicle in a future period of timeand corresponding communication connection quality comprises:determining communication connection quality at a possible location ofthe vehicle in a future period of time according to the diagram of thedistribution of the communication connection quality.
 6. The methodaccording to claim 5, wherein the predicting a possible location of thevehicle in a future period of time and corresponding communicationconnection quality comprises: filtering the distribution of thecommunication connection quality according to the vehicle information,so as to obtain a distribution of the communication connection qualitythat is specific to the vehicle.
 7. The method according to claim 5,wherein the establishing a diagram of a distribution of thecommunication connection quality comprises: receiving information oflocations periodically uploaded by the vehicle and communicationconnection quality at the locations; and determining communicationconnection quality at each location according to massive informationuploaded by the vehicle.
 8. A data transmission apparatus for anInternet of Vehicles system, the apparatus comprising: one or morecomputer processors; one or more computer readable storage medium;program instructions stored on the computer readable storage medium forexecution by at least one of the one or more processors, the programinstructions being included in one or more modules, the one or moremodules comprising: an obtaining module configured to obtain informationof a vehicle, the information comprising a current location of thevehicle; a predicting module configured to predict a possible locationof the vehicle in a future period of time and correspondingcommunication connection quality; a communication connection qualitypredicting module configured to predict changes of the communicationconnection quality in the vehicle running course according to thecommunication connection quality at the current location of the vehicleand the communication connection quality at the predicted location; andan adjustment policy determining module configured to, according to thechanges, determine an adjustment policy of computing resources forprocessing data uploaded by the vehicle.
 9. The apparatus according toclaim 8, wherein the computing resources comprise a buffer space that isset for the vehicle, the adjustment policy comprising: in response to aprediction that the communication connection quality will decrease,increasing the buffer space; and in response to a prediction that thecommunication connection quality will increase, reducing the bufferspace.
 10. The apparatus according to claim 8, wherein the computingresources comprise a data uploading frequency that is set for thevehicle, the adjustment policy comprising: in response to a predictionthat the communication connection quality will decrease, notifying thevehicle to increase the data uploading frequency for uploading as muchdata as possible before the communication quality gets worse; and inresponse to a prediction that the communication connection quality willincrease, notifying the vehicle to maintain or decrease the datauploading frequency.
 11. The apparatus according to claim 8, wherein thecomputing resources comprise a decompression parameter that is set forthe vehicle, the adjustment policy comprising: in response to aprediction that the communication connection quality will decrease, theserver adjusting the decompression parameter to support uploaded datawith higher compression efficiency from the vehicle, and notifying thevehicle to use a corresponding compression parameter for compressingdata with the higher compression efficiency; and in response to aprediction that the communication connection quality will increase, theserver adjusting the decompression parameter to support data with lowercompression efficiency from the vehicle, and notifying the vehicle touse a corresponding compression parameter for compressing data with thelower compression efficiency.
 12. The apparatus according to claim 8,further comprising: a module configured to establish a diagram of adistribution of the communication connection quality, the diagram of thedistribution of the communication connection quality comprisingcommunication connection quality information at multiple locations in acertain area; and the predicting module comprising a module configuredto determine communication connection quality at a possible location ofthe vehicle in a future period of time according to the diagram of thedistribution of the communication connection quality.
 13. The apparatusaccording to claim 12, the predicting module comprising: a moduleconfigured to filter the distribution of the communication connectionquality according to the vehicle information, so as to obtain adistribution of the communication connection quality that is specific tothe vehicle.
 14. The apparatus according to claim 12, wherein the moduleconfigured to establish a diagram of a distribution of the communicationconnection quality comprises: a module configured to receive informationof locations periodically uploaded by the vehicle and communicationconnection quality at the locations; and a module configured todetermine communication connection quality at each location according tomassive information uploaded by the vehicle.